package com.sjzd.server.service;

import com.sjzd.server.pojo.Admin;
import com.baomidou.mybatisplus.extension.service.IService;
import com.sjzd.server.pojo.RespBean;
import com.sjzd.server.pojo.Role;

import javax.servlet.http.HttpServletRequest;
import java.util.List;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author sjzd
 * @since 2021-02-21
 */
public interface IAdminService extends IService<Admin> {

    /**
     * 用户登录并返回token信息
     * @param username
     * @param password
     * @param req
     * @return
     */
    RespBean login(String username, String password, HttpServletRequest req);

    /**
     *  根据用户名获取用户信息
     * @param username
     * @return
     */
    Admin getAdminByUsername(String username);

    /**
     *  根据用户id获取角色信息
     * @param id
     * @return
     */
    List<Role> getRolesByAdminId(Integer id);

    /**
     *  获取所有的非系统操作管理员
     * @param keywords
     * @return
     */
    List<Admin> getAllAdmins(String keywords);

    /**
     *  更新用户角色
     * @param id
     * @param rids
     * @return
     */
    RespBean updateRolesById(Integer id, Integer[] rids);
}
